﻿using Contact.API.Data.Core;
using Contact.API.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;

namespace Contact.API.Data.Interface
{
    public interface IContactRepository
    {
        Task<bool> UpdateContactInfoAsync(BaseUserInfo baseUserInfo, CancellationToken cancellactionToken);

        Task<bool> AddContactInfoAsync(BaseUserInfo baseUserInfo, CancellationToken cancellactionToken);

        Task<List<Core.Contact>> GetContactsAsync(int userId,CancellationToken cancellationToken);
        Task<bool> TagContactAsync(int userId, int contactId, List<string> tags, CancellationToken cancellationToken);
    }
}
